// 引入db
// const db = require("../db/index");
// 引入bryptjs进行密码加密
const bcrypt = require("bcryptjs");

// 邮件发送
let nodemailer = require("nodemailer");

// 发送验证码
exports.sendEmail = (req, res) => {
  //console.log(req);
  let transporter = nodemailer.createTransport({
    // host: 'smtp.163.com',
    service: "qq", //邮箱类型 例如service:'163'
    secure: true, //是否使用安全连接，对https协议的
    // port: 465, //qq邮件服务所占用的端口
    auth: {
      user: "jnfeelings@foxmail.com", //开启SMTP的邮箱，发件人
      pass: "ncqewkwlasyjgejj", // qq授权码
    },
  });
  //产生随机验证码
  var code = "";
  for (var i = 0; i < 6; i++) {
    code += Math.floor(Math.random() * 10);
  }
  let options = {
    from: "jnfeelings@foxmail.com", //发送方
    to: req.body.user_email, //接收方
    subject: "邮箱验证码", //邮件主题
    text: "您的验证码为" + code + ",若非本人操作请忽略", //邮件正文
  };
  transporter.sendMail(options, (err, info) => {
    if (err) {
      res.send(err);
    } else {
      // 加密验证码
      code = bcrypt.hashSync(code, 10);
      const sendCodeSql = "update users set user_code=? where user_email=?";
      // db.query(sendCodeSql, [code, req.body.user_email], (err, results) => {
      //   console.log('-----------------------------------',results)
      //   if (err) return res.cc(err);
      //   if (results.affectedRows !== 1) return res.cc("添置验证码失败！");
      //   res.send({
      //     status: 0,
      //     message: "添置验证码成功！",
      //     data: { info, code },
      //   });
      // });
      res.send({
        code: 200,
        msg: "操作成功",
        data: code,
      });
    }
  });
};
// 验证验证码是否写对
exports.checkCode = (req, res) => {
  const checkcodeSql = "select user_code from users where user_email=?";
  // db.query(checkcodeSql, req.body.user_email, (err, results) => {
  //   if (err) return res.cc(err);
  //   if (results.length <0) return res.cc("用户查找失败！");
  //   const compareResult = bcrypt.compareSync(req.body.user_code, results[0].user_code);
  //   if (!compareResult) return res.cc("验证码错误！");
  //   res.cc("验证码正确！",0)
  //   // 若验证码正确之后，需要将数据库中的验证码清除
  //   const clearcodedSql="update users set user_code=null where user_email=?"
  //   db.query(clearcodedSql, req.body.user_email, (err, results) => {
  //     console.log(results)
  //     if (err) return res.cc(err);
  //     if (results.affectedRows !== 1) return res.cc("验证码清除失败！");
  //   });
  // });
};
